open Castling;;

module CharPG = ParserGenerator (CharToken);;
open CharPG;;

let rec test = lazy !! (
	one_of ~name:"tests" [
		"a", opt >> element 'L' >> test;
		"b", element '1' >> element '2' >> element '3']
) and opt = lazy !! (
	one_of ~name:"opt" [
		"yes", element 'Y';
		"no", epsilon]
);;

debug := true;;
runtime_debug := true;;
generate test;;
